home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 4 / Info_Mac IV CD-ROM (Pacific HiTech Inc.)(August 1994).iso / Development / Source / POVSRC / SOURCE / POV-Ray.make < prev    next >
Text File  |  1994-02-09  |  25KB  |  665 lines

  1. # ==============================================================================
  2. # Project:    POV-Ray
  3. #
  4. # Version:    2.2
  5. # File:        POV-Ray.make
  6. # Contents:
  7. #     MPW Make file, used to generate the POV-Ray application.
  8. #    Now works with MPW 3.0, 3.1, and 3.2.
  9. # Related Files:
  10. #     POV.c: Main Program source
  11. #     POV-Ray.π.rsrc: what rsrcs get appended..
  12. # ------------------------------------------------------------------------------
  13. # Author:
  14. #    Eduard [esp] Schwan
  15. # ------------------------------------------------------------------------------
  16. #    from Persistence of Vision Raytracer
  17. #    Copyright 1993 Persistence of Vision Team
  18. # ------------------------------------------------------------------------------
  19. #    NOTICE: This source code file is provided so that users may experiment
  20. #    with enhancements to POV-Ray and to port the software to platforms other 
  21. #    than those supported by the POV-Ray Team.  There are strict rules under
  22. #    which you are permitted to use this file.  The rules are in the file
  23. #    named POVLEGAL.DOC which should be distributed with this file. If 
  24. #    POVLEGAL.DOC is not available or for more info please contact the POV-Ray
  25. #    Team Coordinator by leaving a message in CompuServe's Graphics Developer's
  26. #    Forum.  The latest version of POV-Ray may be found there as well.
  27. #
  28. #    This program is based on the popular DKB raytracer version 2.12.
  29. #    DKBTrace was originally written by David K. Buck.
  30. #    DKBTrace Ver 2.0-2.12 were written by David K. Buck & Aaron A. Collins.
  31. # ------------------------------------------------------------------------------
  32. #More Info:
  33. #    This Macintosh version of POV-Ray was created and compiled by Jim Nitchals
  34. #    (Think 5.0) and Eduard Schwan (MPW 3.2), based (loosely) on the original
  35. #    port by Thomas Okken and David Lichtman, with some help from Glenn Sugden.
  36. #
  37. #    For bug reports regarding the Macintosh version, you should contact:
  38. #    Eduard [esp] Schwan
  39. #        CompuServe: 71513,2161
  40. #        Internet: jl.tech@applelink.apple.com
  41. #        AppleLink: jl.tech
  42. #    Jim Nitchals
  43. #        Compuserve: 73117,3020
  44. #        America Online: JIMN8
  45. #        Internet: jimn8@aol.com -or- jimn8@applelink.apple.com
  46. #        AppleLink: JIMN8
  47. # ------------------------------------------------------------------------------
  48. # Change History:
  49. #    920308    [esp]    Created for POV-Ray
  50. #    920315    [esp]    Added -b compile option
  51. #    920330    [esp]    Did the file dependencies for real (by hand!)
  52. #    920415    [esp]    Added QuickTime and StdCompression files
  53. #    920429    [esp]    Changed QT & SC file placement, and changed app name to POV-Ray
  54. #    920718    [esp]    Updated to 3.2 only
  55. #    920902    [esp]    Tested under ETO#8, MPW 3.2.3, added TemplateMenu.c
  56. #    920923    [esp]    Collected generic routines into a POVLib.o library for others to use
  57. #    921202    [esp]    Removed -mf option from C, removed -FAR from C & Link
  58. #    930425    [esp]    Broke image window stuff out to ImageWindow.c/h
  59. #    930522    [esp]    Changed app signature from PVtm(1.0) to PvRy(2.0)
  60. #    930605    [esp]    Changed srcpath to incpath on all .h files
  61. #    930829    [esp]    Added the split resource files included
  62. #    931001    [esp]    version 2.0 finished (Released on 10/4/93)
  63. #    940204    [esp]    version 2.2 finished (altered mem alloc defines)
  64. # ==============================================================================
  65.  
  66. #------------------------------------------------------------------------------
  67. # AppName sets the main application name for the make.
  68. # AppSignature sets the Creator signature for the application.
  69. #------------------------------------------------------------------------------
  70. AppName            =    'POV-Ray'
  71. AppSignature    =    'PvRy'
  72.  
  73.  
  74. #------------------------------------------------------------------------------
  75. # Use variables for the compiler/linker tools
  76. #------------------------------------------------------------------------------
  77.  
  78. C        = C
  79. Asm        = Asm
  80. Rez        = Rez
  81. Lib        = Lib
  82. Link    = Link
  83.  
  84. #------------------------------------------------------------------------------
  85. # These are the paths to prefix source and object files, & additional folders with.
  86. #------------------------------------------------------------------------------
  87. srcpath            =    :
  88. corepath        =    :
  89. rezpath            =    :
  90. incpath            =    :
  91. objpath            =     :obj:
  92.  
  93. #------------------------------------------------------------------------------
  94. # These are the include file hierarchy shorthand variables for POVLib
  95. #------------------------------------------------------------------------------
  96.  
  97. # The POV Library file name
  98. POVLib            = POVLib
  99.  
  100. # The headers used
  101. h_stdiop2w = ∂
  102.             {incpath}Stdio_p2w.h
  103. h_FileQueue = ∂
  104.             {incpath}FileQueue.h
  105. h_PopupMenu = ∂
  106.             {incpath}PopupMenu.h
  107. h_POVMalloc = ∂
  108.             {incpath}POVMalloc.h
  109. h_Printf2Window = ∂
  110.             {h_stdiop2w} ∂
  111.             {incpath}Printf2Window.h
  112. h_ProgressDialog = ∂
  113.             {incpath}ProgressDialog.h
  114. h_ScreenUtils = ∂
  115.             {incpath}ScreenUtils.h
  116. h_POVLib = ∂
  117.             {h_FileQueue} ∂
  118.             {h_PopupMenu} ∂
  119.             {h_POVMalloc} ∂
  120.             {h_Printf2Window} ∂
  121.             {h_ProgressDialog} ∂
  122.             {h_ScreenUtils}
  123.  
  124. # the objects used
  125. o_FileQueue = ∂
  126.             {objpath}FileQueue.o
  127. o_PopupMenu = ∂
  128.             {objpath}PopupMenu.o
  129. o_POVMalloc = ∂
  130.             {objpath}POVMalloc.o
  131. o_Printf2Window = ∂
  132.             {objpath}Printf2Window.o
  133. o_ProgressDialog = ∂
  134.             {objpath}ProgressDialog.o
  135. o_ScreenUtils = ∂
  136.             {objpath}ScreenUtils.o
  137. o_POVLib = ∂
  138.             {o_FileQueue} ∂
  139.             {o_PopupMenu} ∂
  140.             {o_POVMalloc} ∂
  141.             {o_Printf2Window} ∂
  142.             {o_ProgressDialog} ∂
  143.             {o_ScreenUtils}
  144.  
  145. h_TextEditor = ∂
  146.             {incpath}TextEditor.h
  147.  
  148. #------------------------------------------------------------------------------
  149. # These are the include file hierarchy shorthand variables for the Application
  150. #------------------------------------------------------------------------------
  151.  
  152. h_ImageWindow = ∂
  153.         {incpath}ImageWindow.h
  154.  
  155. h_TemplateMenu = ∂
  156.         {incpath}TemplateMenu.h
  157.  
  158. h_config = ∂
  159.         {incpath}Config.h ∂
  160.         {h_POVLib}
  161.  
  162. h_povmac = ∂
  163.         {incpath}PovMac.h ∂
  164.         {incpath}Animate.h ∂
  165.         {h_POVLib}
  166.  
  167. h_frame = ∂
  168.         {h_Config}
  169.  
  170. h_fp = ∂
  171.         {h_frame} ∂
  172.         {incpath}povproto.h ∂
  173.  
  174. h_fvp = ∂
  175.         {h_frame} ∂
  176.         {incpath}vector.h ∂
  177.         {incpath}povproto.h ∂
  178.  
  179. h_fvpt = ∂
  180.         {h_fvp} ∂
  181.         {incpath}texture.h ∂
  182.  
  183.  
  184. #------------------------------------------------------------------------------
  185. # These are the compiled resource files that we want to link with.
  186. # If any one of these changes, then we invoke the Rez command.
  187. #------------------------------------------------------------------------------
  188.  
  189. rsrcFiles = ∂
  190.         {rezpath}POV.π.rsrc
  191.  
  192. #------------------------------------------------------------------------------
  193. # These are the objects that we want to link with. If any one of these
  194. # changes, then we invoke the Link command.
  195. #------------------------------------------------------------------------------
  196.  
  197. MacObjects = ∂
  198.         {objpath}Animate.c.o ∂
  199.         {objpath}ImageWindow.c.o ∂
  200.         {objpath}Pov.c.o ∂
  201.         {objpath}SaveCmpPict.c.o ∂
  202.         {objpath}TemplateMenu.c.o ∂
  203.         {objpath}TextEditor.C.o ∂
  204.         {objpath}{POVLib}.o ∂
  205.         {libraries}StdCompressionGlue.o    # QuickTime StdCmp Dialog
  206.         # Note that in MPW 3.3 and later, StdCompressionGlue.o is in {libraries}
  207.  
  208. POVCoreObjects = ∂
  209.         {objpath}BEZIER.C.o ∂
  210.         {objpath}BLOB.C.o ∂
  211.         {objpath}BOUND.C.o ∂
  212.         {objpath}BOXES.C.o ∂
  213.         {objpath}CAMERA.C.o ∂
  214.         {objpath}COLOUR.C.o ∂
  215.         {objpath}CONES.C.o ∂
  216.         {objpath}CSG.C.o ∂
  217.         {objpath}DISCS.C.o ∂
  218.         {objpath}DUMP.C.o ∂
  219.         {objpath}EXPRESS.C.o ∂
  220.         {objpath}GIF.C.o ∂
  221.         {objpath}GIFDECOD.C.o ∂
  222.         {objpath}HFIELD.C.o ∂
  223.         {objpath}IFF.C.o ∂
  224.         {objpath}IMAGE.C.o ∂
  225.         {objpath}LIGHTING.C.o ∂
  226.         {objpath}MATRICES.C.o ∂
  227.         {objpath}NORMAL.C.o ∂
  228.         {objpath}OBJECTS.C.o ∂
  229.         {objpath}PARSE.C.o ∂
  230.         {objpath}PIGMENT.C.o ∂
  231.         {objpath}PLANES.C.o ∂
  232.         {objpath}POINT.C.o ∂
  233.         {objpath}POLY.C.o ∂
  234.         {objpath}POVRAY.C.o ∂
  235.         {objpath}QUADRICS.C.o ∂
  236.         {objpath}RAW.C.o ∂
  237.         {objpath}RAY.C.o ∂
  238.         {objpath}RENDER.C.o ∂
  239.         {objpath}SPHERES.C.o ∂
  240.         {objpath}TARGA.C.o ∂
  241.         {objpath}TEXTURE.C.o ∂
  242.         {objpath}TOKENIZE.C.o ∂
  243.         {objpath}TRIANGLE.C.o ∂
  244.         {objpath}TXTTEST.C.o ∂
  245.         {objpath}VECT.C.o
  246.  
  247. AppObjects = ∂
  248.         {MacObjects} ∂
  249.         {POVCoreObjects}
  250.  
  251.  
  252. #------------------------------------------------------------------------------
  253. # Options for our compilers:
  254. #    -sym on: tells the compilers and linker to emit symbol information for
  255. #        a source level debugger, such as SADE.
  256. #    -i {ExtraIncludes}: means to look for any #include files in the specified
  257. #        directory, as well as the normal set.
  258. #    -r: tells the C compiler to require function prototypes.
  259. #    -mbg off: tells the compilers to not emit low-level debugger names. This
  260. #        saves on file space, but you may wish to remove this option if you
  261. #        need to debug with something like Macsbug.
  262. #    -rd: for Rez means to suppress warnings for redeclared types (we redeclare
  263. #        'RECT' because it’s not included in MPW 3.0).
  264. #    -append: means to add the resources to the target file, rather than
  265. #        deleting all the ones that are there first.
  266. #    -d Signature...: is a way of passing our application's signature to Rez.
  267. #        With this mechanism, we can define our signature here, and export
  268. #        it to Rez, so that we don't have to declare it there, too.
  269. #    -sn STDCLIB=Main: puts all the routines that would normally go into the
  270. #        STDCLIB segment into the Main segment. This is done so that when we
  271. #        call upon any low-level utilities, we don't potentially move memory
  272. #        by loading in a segment.
  273. #------------------------------------------------------------------------------
  274.  
  275. DebugStmts            =    #-d NEEDS_DEBUG                    # turn on to add internal debug stmts
  276. CAltOptions            =    -r -b2 -d SystemSixOrLater=1
  277. Cmp020Options        =    -d NEEDS_68020 -mc68020            # turn on to force 68020 or better CPU code
  278. CmpColorQD            =    -d NEEDS_COLORQD                # turn on to force Color Quickdraw ROM Support
  279. Cmp32BitQD            =    -d NEEDS_32BITQD                # turn on to force 32Bit Quickdraw ROM Support
  280. CmpFPUOptions        =    #-d NEEDS_FPU -mc68881 -elems881 # turn on to force 68881 FPU calls
  281. USE_NATIVE_MALLOC    =    #-d USE_NATIVE_MALLOC        # turn off to use C's malloc(), on for Mac's NewPtr()
  282. MALLOC_TRACE        =    #-d    # Add file/line info to mallocs for garbcoll info
  283. USE_MEM_HANDLES        =    #-d    # Use Mac's NewHandle() instead of NewPtr()
  284. USE_MEMTAGS            =    #-d    # turn on to check free calls for bad ptrs
  285. MemFlags            = ∂
  286.     {USE_NATIVE_MALLOC} {MALLOC_TRACE} {USE_MEM_HANDLES} {USE_MEMTAGS}
  287. CUSTOM_VERSION        =    #-d    XYZ_VERSION                    # turn ON for any "special" versions :-)
  288. NEEDS_PROF            =    #-d    NEEDS_PROF                    # turn on to do profiling
  289. LoadDumpOptions        =    #-k {objpath}                    # turn on to do load/dump files
  290. # Far model support (fardata was needed in 1.0, farcode for non-fpu version in 2.0...)
  291. CModel                =    -model farcode
  292. LinkModel            =    -model far
  293.  
  294. PerfCmpOptions        =    #-d NEEDS_PERF=1 -trace on        # turn on to enable performance code
  295. PerfLinkOptions        =    #"{Libraries}"Proff.o -sn ProffSeg=Main    # turn on to use performance tools
  296.  
  297. # non-FPU libs
  298. LinkMathLibs            =    "{CLibraries}"CSANELib.o "{CLibraries}"Math.o
  299. # FPU libs
  300. #LinkMathLibs        =    "{CLibraries}"Clib881.o "{CLibraries}"CSANELib881.o "{CLibraries}"Math881.o
  301.  
  302. MapOptions            =    -l -map > {AppName}.Map            # or use this for human-readable map
  303. SymOptions            =    #-sym full                        # turn on to debug with SADE
  304. MbgOptions        =    -mbg on                            # turn on to insert MacsBug labels
  305. CInc2Folders    =    #-i {incpath}
  306. RInc2Folders    =    #-i {rezpath}
  307.  
  308. ShowProgress    =  Echo "# `date -s` ----- Building {Targ}"
  309.  
  310. #----------------
  311. # Good ol' MPW 3.2 std libraries are now in their own segments, for reasons known only to
  312. # the MPW team..  Put them back into the main segment so we don't get totally fragmented..
  313. SegmentMappings    =    -sn INTENV=Main2 ∂
  314.                     -sn PASLIB=Main2 ∂
  315.                     -sn SADEV=Main2 ∂
  316.                     -sn STDCLIB=Main2 ∂
  317.                     -sn STDIO=Main2 ∂
  318.                     -sn CSANELib=Main2 ∂
  319.                     -sn SANELIB=Main2
  320. #----------------
  321. MyCOptions        =    {COptions} {CAltOptions} {CModel} {CInc2Folders} {SymOptions} {LoadDumpOptions} ∂
  322.                     {MemFlags} {DebugStmts} {CUSTOM_VERSION} {MbgOptions} ∂
  323.                     {Cmp020Options} {CmpFPUOptions} {CmpColorQD} {Cmp32bitQD}
  324.  
  325. RezOptions        =    -rd -append {RInc2Folders} ∂
  326.                     -d AppSignature={AppSignature} -d AppName={AppName}
  327.  
  328. # -d suppress dups
  329. LinkOptions        =    -d {LinkModel} {SymOptions} {PerfLinkOptions} ∂
  330.                     {SegmentMappings} {MapOptions}
  331.  
  332.  
  333. #------------------------------------------------------------------------------
  334. # These help define the libraries that we want to link with. {AppObjects} holds
  335. # the names of the application units we want to link together. {CLibs} holds
  336. # the libraries we want to link with under MPW 3.0 or MPW 3.1. Under MPW 3.2
  337. # and later, “CInterface.o” and “CRuntime.o” are merged with “Interface.o” and
  338. # “Runtime.o”. So, under 3.2 and later, we link with the files in {CLibs32}
  339. # instead.
  340. #------------------------------------------------------------------------------
  341. CLibs            =    ∂
  342.                     {LinkMathLibs} ∂
  343.                     "{CLibraries}"StdCLib.o ∂
  344.                     "{CLibraries}CRuntime.o" ∂
  345.                     "{CLibraries}CInterface.o" ∂
  346.                     "{Libraries}Interface.o"
  347.  
  348. CLibs32            =    ∂
  349.                     {LinkMathLibs} ∂
  350.                     "{CLibraries}"StdCLib.o ∂
  351.                     "{Libraries}Runtime.o" ∂
  352.                     "{Libraries}Interface.o"
  353.  
  354.  
  355. #------------------------------------------------------------------------------
  356. # This is a dummy dependency rule.  This will always be executed.  This dummy
  357. # rule must be the first for {AppName} so that it will be executed first.
  358. # This is necessary to make evaluations that are beyond the scope of
  359. # Make.  These evaluations will be performed by the CShell at execution time,
  360. # and they must execute first because compile and link command lines depend
  361. # on variables set up by these evaluations.  This has the unfortunate side
  362. # effect that Make will always consider {AppName} to be out of date.  It will
  363. # always, at a minimum, execute the commands for the target ShellForce.
  364. #------------------------------------------------------------------------------
  365.  
  366. {AppName}            ƒƒ ShellForce
  367.  
  368. # With the above rule, {AppName} will always be out of date with respect to
  369. # the non-existent file ShellForce.  This will force the following commands to
  370. # be executed.
  371. ShellForce            ƒ
  372.     BEGIN
  373.         IF "{ShellVersion}" == ""
  374.             ( EVALUATE "`Version`" =~ /MPW Shell≈ ([0-9]+(.[ab0-9]+)+)®1≈/ ) ∑ Dev:Null
  375.             SET ShellVersion "{®1}"
  376.         END
  377.         IF "{ShellVersion}" =~ /3.[01]≈/
  378.             SET CAltOptions "-d MPW31"
  379.             SET CSysObjects "`QUOTE {CLibs}`"
  380.         ELSE
  381.             SET CAltOptions "-d MPW32"
  382.             SET CSysObjects "`QUOTE {CLibs32}`"
  383.         END
  384.     END ∑ Dev:Null # Output to bit bucket so we don’t see above calculations
  385.  
  386.  
  387. #------------------------------------------------------------------------------
  388. # Build rule that links our application together. If any of our objects 
  389. # change, or this makefile changes, then we relink.  The dummy prerequisite
  390. # ShellForce must come before any other prerequisites for {AppName}
  391. #------------------------------------------------------------------------------
  392.  
  393. {AppName}        ƒƒ    {AppName}.make  {AppObjects}
  394.     {ShowProgress} ; Echo "# Linking..."
  395.     {Link} {LinkOptions} -o {Targ} {AppObjects} {CSysObjects}
  396.     # Set file's creator type, turn on bundle bit, turn off inited bit
  397.     SetFile {Targ} -t APPL -c {AppSignature} -a Bi
  398.  
  399. #------------------------------------------------------------------------------
  400. # Build rule that creates our resources and adds them to the application
  401. #------------------------------------------------------------------------------
  402.  
  403. {AppName}        ƒƒ    {AppName}.make ∂
  404.                     {rezpath}{AppName}.r ∂
  405.                     {rsrcFiles}
  406.     {ShowProgress} ; Echo "# Rezzing..."
  407.     {Rez} {RezOptions} {rezpath}{AppName}.r -o {Targ}
  408.  
  409.  
  410. #------------------------------------------------------------------------------
  411. # Segment Names for the code segments
  412. #------------------------------------------------------------------------------
  413.  
  414. segAnimate        = -s 'povAnim'
  415. segBezier        = -s 'povBezier'
  416. segBlob            = -s 'povBlob'
  417. segBound        = -s 'povBound'
  418. segBoxes        = -s 'povBoxes'
  419. segCamera        = -s 'povCamera'
  420. segCones        = -s 'povCones'
  421. segCSG            = -s 'povCSG'
  422. segDiscs        = -s 'povDiscs'
  423. segHF            = -s 'povHF'
  424. segImage        = -s 'povImage'
  425. segLighting        = -s 'povLighting'
  426. segNormal        = -s 'povNormal'
  427. segParse        = -s 'povParse'
  428. segParse2        = -s 'povParse2'
  429. segPigment        = -s 'povPigment'
  430. segPix            = -s 'povPix'
  431. segPlanes        = -s 'povPlanes'
  432. segPoly            = -s 'povPoly'
  433. segPOVLib        = -s 'povLib'
  434. segPOV            = -s 'povMac'
  435. segPOVRay        = -s 'povRay'
  436. segPrim1        = -s 'povPrim1'
  437. segPrim2        = -s 'povPrim2'
  438. segRender        = -s 'povRender'
  439. segTex            = -s 'povTex'
  440. segTokenize        = -s 'povToke'
  441. segTri            = -s 'povTri'
  442. segSphere        = -s 'povSphere'
  443. segWindows        = -s 'povWindows'
  444. segColour        = -s 'povColour'
  445. segTarga        = -s 'povTarga'
  446. segTemplate        = -s 'povTemplate'
  447.  
  448. #------------------------------------------------------------------------------
  449. # Build rules that compile our POV Library from its source files
  450. #------------------------------------------------------------------------------
  451.  
  452. {o_FileQueue}            ƒ    {h_FileQueue} {srcpath}FileQueue.c
  453.     {ShowProgress}
  454.     {C} {srcpath}FileQueue.c {segPOVLib} {MyCOptions} {CAltOptions} -o {o_FileQueue}
  455.  
  456. {o_PopupMenu}            ƒ  {h_PopupMenu} {srcpath}PopupMenu.c
  457.     {ShowProgress}
  458.     {C} {srcpath}PopupMenu.c {segPOVLib} {MyCOptions} {CAltOptions} -o {o_PopupMenu}
  459.  
  460. {o_POVMalloc}            ƒ  {h_POVMalloc} {srcpath}POVMalloc.c
  461.     {ShowProgress}
  462.     {C} {srcpath}POVMalloc.c {segPOVLib} {MyCOptions} {CAltOptions} -o {o_POVMalloc}
  463.  
  464. {o_Printf2Window}        ƒ    {h_Printf2Window}  {srcpath}Printf2Window.c
  465.     {ShowProgress}
  466.     {C} {srcpath}Printf2Window.c {segPOVLib} {MyCOptions} {CAltOptions} -o {o_Printf2Window}
  467.  
  468. {o_ProgressDialog}        ƒ    {h_ProgressDialog}  {srcpath}ProgressDialog.c
  469.     {ShowProgress}
  470.     {C} {srcpath}ProgressDialog.c {segPOVLib} {MyCOptions} {CAltOptions} -o {o_ProgressDialog}
  471.  
  472. {o_ScreenUtils}            ƒ    {h_ScreenUtils}  {srcpath}ScreenUtils.c
  473.     {ShowProgress}
  474.     {C} {srcpath}ScreenUtils.c {segPOVLib} {MyCOptions} {CAltOptions} -o {o_ScreenUtils}
  475.  
  476. {objpath}{POVLib}.o        ƒ    {o_POVLib}
  477.     {ShowProgress}
  478.     {Lib} {o_POVLib} -o {objpath}{POVLib}.o
  479.  
  480. #------------------------------------------------------------------------------
  481. # Build rules that compile our Mac-specific source files
  482. #------------------------------------------------------------------------------
  483.  
  484. {objpath}Animate.c.o        ƒƒ    {h_POVLib} {incpath}Animate.h {srcpath}Animate.c
  485.     {ShowProgress}
  486.     {C} {srcpath}Animate.c {segAnimate} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}Animate.c.o
  487.  
  488. {objpath}ImageWindow.c.o        ƒƒ    {h_fp} {srcpath}ImageWindow.c {h_ImageWindow}
  489.     {ShowProgress}
  490.     {C} {srcpath}ImageWindow.c {segWindows} {MyCOptions} {CAltOptions} -o {objpath}ImageWindow.c.o
  491.  
  492. {objpath}Pov.C.o        ƒƒ    {h_fp} {h_ImageWindow} {h_TextEditor} {h_povmac} {h_POVLib} {h_TemplateMenu} {incpath}SaveCmpPict.h {srcpath}Pov.C
  493.     {ShowProgress}
  494.     {C} {srcpath}Pov.C {segPOV} {MyCOptions} {CAltOptions} -o {objpath}Pov.C.o
  495.  
  496. {objpath}SaveCmpPict.c.o    ƒƒ    {incpath}SaveCmpPict.h {srcpath}SaveCmpPict.c
  497.     {ShowProgress}
  498.     {C} {srcpath}SaveCmpPict.c {segPix} {MyCOptions} {CAltOptions} -o {objpath}SaveCmpPict.c.o
  499.  
  500. {objpath}TemplateMenu.c.o    ƒƒ    {h_TemplateMenu}  {h_povmac}  {srcpath}TemplateMenu.c
  501.     {ShowProgress}
  502.     {C} {srcpath}TemplateMenu.c {segTemplate} {MyCOptions} {CAltOptions} -o {objpath}TemplateMenu.c.o
  503.  
  504. {objpath}TextEditor.C.o    ƒƒ    {h_TextEditor} {h_povmac} {srcpath}TextEditor.C
  505.     {ShowProgress}
  506.     {C} {srcpath}TextEditor.C {segWindows} {MyCOptions} {CAltOptions} -o {objpath}TextEditor.C.o
  507.  
  508.  
  509. #------------------------------------------------------------------------------
  510. # Build rules that compile the POV-Ray Core source files
  511. #------------------------------------------------------------------------------
  512.  
  513. {objpath}BEZIER.C.o        ƒƒ    {h_fvp} {corepath}BEZIER.C
  514.     {ShowProgress}
  515.     {C} {corepath}BEZIER.C {segBezier} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}BEZIER.C.o
  516.  
  517. {objpath}BLOB.C.o        ƒƒ    {h_fvp} {corepath}BLOB.C
  518.     {ShowProgress}
  519.     {C} {corepath}BLOB.C {segBlob} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}BLOB.C.o
  520.  
  521. {objpath}BOUND.C.o        ƒƒ    {h_fvp} {corepath}BOUND.C
  522.     {ShowProgress}
  523.     {C} {corepath}BOUND.C {segBound} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}BOUND.C.o
  524.  
  525. {objpath}BOXES.C.o        ƒƒ    {h_fvp} {corepath}BOXES.C
  526.     {ShowProgress}
  527.     {C} {corepath}BOXES.C {segBoxes} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}BOXES.C.o
  528.  
  529. {objpath}CAMERA.C.o        ƒƒ    {h_fvp} {corepath}CAMERA.C
  530.     {ShowProgress}
  531.     {C} {corepath}CAMERA.C {segCamera} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}CAMERA.C.o
  532.  
  533. {objpath}COLOUR.C.o        ƒƒ    {h_fvp} {corepath}COLOUR.C
  534.     {ShowProgress}
  535.     {C} {corepath}COLOUR.C {segColour} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}COLOUR.C.o
  536.  
  537. {objpath}CONES.C.o        ƒƒ    {h_fvp} {corepath}CONES.C
  538.     {ShowProgress}
  539.     {C} {corepath}CONES.C {segCones} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}CONES.C.o
  540.  
  541. {objpath}CSG.C.o        ƒƒ    {h_fvp} {corepath}CSG.C
  542.     {ShowProgress}
  543.     {C} {corepath}CSG.C {segCSG} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}CSG.C.o
  544.  
  545. {objpath}DISCS.C.o        ƒƒ    {h_fvp} {corepath}DISCS.C
  546.     {ShowProgress}
  547.     {C} {corepath}DISCS.C {segDiscs} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}DISCS.C.o
  548.  
  549. {objpath}DUMP.C.o        ƒƒ    {h_fp} {corepath}DUMP.C
  550.     {ShowProgress}
  551.     {C} {corepath}DUMP.C {segPix} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}DUMP.C.o
  552.  
  553. {objpath}EXPRESS.C.o        ƒƒ    {h_fp} {corepath}EXPRESS.C
  554.     {ShowProgress}
  555.     {C} {corepath}EXPRESS.C {segParse2} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}EXPRESS.C.o
  556.  
  557. {objpath}GIF.C.o        ƒƒ    {h_fp} {corepath}GIF.C
  558.     {ShowProgress}
  559.     {C} {corepath}GIF.C {segPix} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}GIF.C.o
  560.  
  561. {objpath}GIFDECOD.C.o    ƒƒ    {h_fp} {corepath}GIFDECOD.C
  562.     {ShowProgress}
  563.     {C} {corepath}GIFDECOD.C {segPix} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}GIFDECOD.C.o
  564.  
  565. {objpath}HFIELD.C.o        ƒƒ    {h_fvp} {corepath}HFIELD.C
  566.     {ShowProgress}
  567.     {C} {corepath}HFIELD.C {segHF} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}HFIELD.C.o
  568.  
  569. {objpath}IFF.C.o        ƒƒ    {h_fp} {corepath}IFF.C
  570.     {ShowProgress}
  571.     {C} {corepath}IFF.C {segPix} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}IFF.C.o
  572.  
  573. {objpath}IMAGE.C.o        ƒƒ    {h_fp} {corepath}IMAGE.C
  574.     {ShowProgress}
  575.     {C} {corepath}IMAGE.C {segImage} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}IMAGE.C.o
  576.  
  577. {objpath}LIGHTING.C.o    ƒƒ    {h_fvp} {corepath}LIGHTING.C
  578.     {ShowProgress}
  579.     {C} {corepath}LIGHTING.C {segLighting} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}LIGHTING.C.o
  580.  
  581. {objpath}MATRICES.C.o    ƒƒ    {h_fvp} {corepath}MATRICES.C
  582.     {ShowProgress}
  583.     {C} {corepath}MATRICES.C {segPrim2} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}MATRICES.C.o
  584.  
  585. {objpath}NORMAL.C.o    ƒƒ    {h_fvp} {corepath}NORMAL.C
  586.     {ShowProgress}
  587.     {C} {corepath}NORMAL.C {segNormal} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}NORMAL.C.o
  588.  
  589. {objpath}OBJECTS.C.o    ƒƒ    {h_fvp} {corepath}OBJECTS.C
  590.     {ShowProgress}
  591.     {C} {corepath}OBJECTS.C {segPrim1} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}OBJECTS.C.o
  592.  
  593. {objpath}PARSE.C.o        ƒƒ    {h_fvp} {corepath}PARSE.C {incpath}PARSE.H
  594.     {ShowProgress}
  595.     {C} {corepath}PARSE.C {segParse} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}PARSE.C.o
  596.  
  597. {objpath}PIGMENT.C.o        ƒƒ    {h_fvp} {corepath}PIGMENT.C
  598.     {ShowProgress}
  599.     {C} {corepath}PIGMENT.C {segPigment} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}PIGMENT.C.o
  600.  
  601. {objpath}PLANES.C.o        ƒƒ    {h_fvp} {corepath}PLANES.C
  602.     {ShowProgress}
  603.     {C} {corepath}PLANES.C {segPlanes} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}PLANES.C.o
  604.  
  605. {objpath}POINT.C.o        ƒƒ    {h_fvp} {corepath}POINT.C
  606.     {ShowProgress}
  607.     {C} {corepath}POINT.C {segPrim1} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}POINT.C.o
  608.  
  609. {objpath}POLY.C.o        ƒƒ    {h_fvp} {corepath}POLY.C
  610.     {ShowProgress}
  611.     {C} {corepath}POLY.C {segPoly} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}POLY.C.o
  612.  
  613. {objpath}POVRAY.C.o        ƒƒ    {h_fvp} {corepath}POVRAY.C
  614.     {ShowProgress}
  615.     {C} {corepath}POVRAY.C {segPOVRay} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}POVRAY.C.o
  616.  
  617. {objpath}QUADRICS.C.o    ƒƒ    {h_fvp} {corepath}QUADRICS.C
  618.     {ShowProgress}
  619.     {C} {corepath}QUADRICS.C {segPoly} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}QUADRICS.C.o
  620.  
  621. {objpath}RAW.C.o        ƒƒ    {h_fp} {corepath}RAW.C
  622.     {ShowProgress}
  623.     {C} {corepath}RAW.C {segPix} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}RAW.C.o
  624.  
  625. {objpath}RAY.C.o        ƒƒ    {h_fvp} {corepath}RAY.C
  626.     {ShowProgress}
  627.     {C} {corepath}RAY.C {segRender} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}RAY.C.o
  628.  
  629. {objpath}RENDER.C.o        ƒƒ    {h_fvp} {corepath}RENDER.C
  630.     {ShowProgress}
  631.     {C} {corepath}RENDER.C {segRender} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}RENDER.C.o
  632.  
  633. {objpath}SPHERES.C.o    ƒƒ    {h_fvp} {corepath}SPHERES.C
  634.     {ShowProgress}
  635.     {C} {corepath}SPHERES.C {segSphere} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}SPHERES.C.o
  636.  
  637. {objpath}TARGA.C.o        ƒƒ    {h_fp} {corepath}TARGA.C
  638.     {ShowProgress}
  639.     {C} {corepath}TARGA.C {segTarga} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}TARGA.C.o
  640.  
  641. {objpath}TEXTURE.C.o    ƒƒ    {h_fvpt} {corepath}TEXTURE.C
  642.     {ShowProgress}
  643.     {C} {corepath}TEXTURE.C {segTex} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}TEXTURE.C.o
  644.  
  645. {objpath}TOKENIZE.C.o    ƒƒ    {h_fp} {corepath}TOKENIZE.C
  646.     {ShowProgress}
  647.     {C} {corepath}TOKENIZE.C {segTokenize} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}TOKENIZE.C.o
  648.  
  649. {objpath}TRIANGLE.C.o    ƒƒ    {h_fvp} {corepath}TRIANGLE.C
  650.     {ShowProgress}
  651.     {C} {corepath}TRIANGLE.C {segTri} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}TRIANGLE.C.o
  652.  
  653. {objpath}TXTTEST.C.o    ƒƒ    {h_fvpt} {corepath}TXTTEST.C
  654.     {ShowProgress}
  655.     {C} {corepath}TXTTEST.C {segPrim2} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}TXTTEST.C.o
  656.  
  657. {objpath}VECT.C.o        ƒƒ    {h_fvp} {corepath}VECT.C
  658.     {ShowProgress}
  659.     {C} {corepath}VECT.C {segPrim1} {MyCOptions} {CAltOptions} {PerfCmpOptions} -o {objpath}VECT.C.o
  660.